﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;

namespace KPIS.GERP.GHRMS.IBLL
{
    public interface IHRDEvaluationBLL
    {
        DataTable getPosSeq(int intEmpSequence);
        DataTable LoadGoalObjective(int intEmpSequence);
        DataTable LoadGridDevelopmentNeed(int intEmpSequence);
        DataTable LoadGridKPA(int intPosSequence);
        DataTable LoadScoreFormat(int intEvaluationListSeq);
        DataTable LoadGridStrategyProject(int intRoundYear, DateTime dateRoundStartDate, DateTime dateRoundEndDate, int intEmpSequence);
        DataTable LoadGridCoreCompetency(int intPosSequence);
        DataTable LoadGridIDP(int intPosSequence);
        DataTable LoadEvaluationList();
        DataTable LoadRound(string strRoundYear);
        DataTable DeleteRound(int intRoundSeq, int intUpdatedBy);
        DataTable Round(int intEvalRoundSeq);
        DataTable CheckRoundPermission(int intEvaluationRoundSeq);
        DataTable CheckEvaluation(int intEmpSequence, int intEvaluationRoundSeq);
        DataTable CheckOtherScore(int intEmpSequence, int intEvaluationRoundSeq);
        DataTable LoadData(int intEmpSeq);
        DataTable LoadResultIDP(int intEmpSeq, int intRoundSeq);
        DataTable LoadDevelopmentMethod();
        DataTable GetSubData(int head, int intEmpSeq, int intRoundSeq);
        DataTable GetData();
        DataTable GetExpectResult(int intEmpSeq);
        DataTable GetHeaderSchema();
        DataTable GetDetailSchema();
        string SaveEvaluationScore(DataSet dsKPA, DataSet dsStrategy, DataSet dsCC, DataSet dsIDP);
        void UpdateApproved(int intEmpSeq, int intEvaluationRoundSeq, int intCreateBy, bool boolApproved);
        void UpdateRound(int intNo, int intYear, DateTime datRoundStart, DateTime datRoundEnd, DateTime datPermissStart, DateTime datPermissEnd
                                , string strRemark, int intUpdateBy, int intEvaluationRoundSeq);
        void CreateRound(int intNo, int intYear, DateTime datRoundStart, DateTime datRoundEnd, DateTime datPermissStart, DateTime datPermissEnd
                                , string strRemark, int intCreateBy);
        
        DataTable GetHeaderSchema(int intEmpSeq, int intEvaluationRoundSeq);
        DataTable GetSchemaOtherScore(int intEmpSeq, int intEvaluationRoundSeq);
        string SaveEvaluationOtherScore(DataSet dsKPA, DataSet dsStrategy, DataSet dsCC, DataSet dsIDP, int intEmpSeq, int intEvaluationRoundSeq);

    }     
}
